1. Field of the Invention
The present invention relates to network devices and, more specifically, to systems for controlling the admission of connection requests and the allocation of bandwidth in a network environment.
2. Background
Networks frequently utilize control systems for allocating bandwidth among various nodes and across various links in a network. The control systems also control the admission of connection requests received by nodes in a network. These control systems are generically referred to as Connection Admission Controllers (CACs). CACs define a set of actions or rules to be followed by the network nodes to determine whether a new connection should be accepted or rejected. The functions provided by a Connection Admission Controller are performed at the connection level and guarantee that particular Quality of Service (QoS) requirements (e.g., delay and loss limitations) are maintained for each data flow. The Connection Admission Controller promotes and maintains an efficient utilization of network resources such as transmission line bandwidth.
In a typical network, network nodes receive connection requests including required QoS parameters as well as traffic parameters for the requested connection. Additionally, each connection request may specify a particular class of service for the data flow. The required QoS parameters may include bandwidth requirements, transmission delay, or the loss ratio for the requested data flow. The traffic parameters for the connection request may include Peak Cell Rate (PCR), Sustainable Cell Rate (SCR), Minimum Cell Rate (MCR), and Burst Tolerance (BT), depending on the traffic class for the connection. These traffic parameters are discussed in greater detail below.
Various classes of traffic service may be requested for a particular data flow. Constant Bit Rate (CBR) traffic provides a constant (or nearly constant) flow of data. Variable Bit Rate (VBR) is used for data flows in which the data rate is variable. Different types of Variable Bit Rates may be specified, including real-time Variable Bit Rate traffic (rt-VBR) and non-real-time Variable Bit Rate traffic (nrt-VBR). rt-VBR is useful for transmitting real-time information such as voice data or live video. nrt-VBR is useful for data flows which are variable, but do not require the stringent real-time QoS parameters. Available Bit Rate (ABR) service utilizes a varying portion of the bandwidth depending on the traffic conditions of the current data flows that may include the connections on the other service classes. Finally, Unspecified Bit Rate (UBR) service may be requested without specifying any particular QoS parameters. UBR data is serviced when excess resources are available.
Peak Cell Rate (PCR) describes the data transfer rate in the Constant Bit Rate service class and the maximum transfer rate in other classes of service. The Sustainable Cell Rate (SCR) is the required average cell transfer rate in a time interval described by Burst Tolerance (BT) for a Variable Bit Rate service class (either real-time or non-real-time). Burst Tolerance also specifies the maximum possible burst in the cell flow in a Variable Bit Rate service class. Minimum Cell Rate (MCR) is the minimum cell transfer rate in the Available Bit Rate service class.
Known systems for controlling admission of connection requests and allocating bandwidth utilize information provided by the traffic parameters in the connection request. However, these known systems do not consider the actual (or measured) data flow resulting from previously accepted connection requests. Instead, these systems rely on the traffic parameters provided in the connection request to allocate bandwidth and control admission of subsequent connection requests. Such a system may reject a subsequent connection request if, for example, the Peak Cell Rate information provided in the existing (accepted) connections do not permit addition of the new connection request. However, such a rejection may be unwarranted if the actual (or measured) data flow is less than the peak data flow specified in the connection request. In this situation, the bandwidth is not being utilized effectively and connection requests may be rejected when actual bandwidth is available to support the requested connection.
Therefore, it is desirable to provide a system for controlling admission of connection requests and allocating bandwidth in response to information contained in traffic parameters as well as actual traffic flow measurements for the various classes of service supported.
An embodiment of the present invention provides a system for controlling the admission of connection requests in a network node. The received connection request specifies a particular class of service. The system then determines the allocated bandwidth for the specified class of service. Available resources for the specified class of service are determined based on measured traffic flow and the allocated bandwidth associated with the specified class of service. The connection request is accepted by the system if the available resources are capable of supporting the requested connection.
Another feature of the invention provides an allocation factor used by the system to allocate bandwidth. The allocation factor may be calculated and updated in response to changes in measured traffic flow.
Other aspects of the invention consider subscribed traffic parameters to determine available resources for the specified class of service.
Another feature of the present invention provides for the over-subscription of allocated bandwidth for the specified class of service.
A particular embodiment of the invention is implemented in an asynchronous transfer mode (ATM) switch.